{% extends "templates/main_template.html.j2" %}

{% import "macros/user_name.html.j2" as USER_NAME %}

{% block title -%}
  Поиск · Farado
{%- endblock %}

{% set active_menu = 'active_issues' %}


{#----------------------------------------------------------------------------#}
{% block styles %}
  <link href="/static/css/page-toolbar.css" rel="stylesheet" type="text/css" />
{% endblock %}



{#----------------------------------------------------------------------------#}
{% block breadcrumb %}
  <ol class="breadcrumb">
    <li class="breadcrumb-item active" aria-current="page">
      Результаты поиска: «{{ search_value }}» (всего: {{ issues_count }} шт.)
    </li>
  </ol>
{% endblock %}


{#----------------------------------------------------------------------------#}
{% block content %}
  <div class="row mt-3">
    <div class="col-12">
      {# Перечень запросов #}
        {% if search_results %}
          {% for issue in search_results %}
            {% set issue_kind = project_manager.issue_kind(issue.issue_kind_id) %}
            {% set workflow = project_manager.workflow(issue_kind.workflow_id) %}
            {% set parent_issue = project_manager.issue(issue.parent_id) %}
            {# Заголовок запроса #}
              <div class="d-flex w-100 justify-content-between alert alert-secondary p-1 mb-1">
                <div class="mb-1">

                  {# Наименование родительского запроса #}
                    <p class="mb-1">
                      {% if parent_issue %}
                        <a href="/issues/issue/{{ parent_issue.id }}"
                            class="parent-title link"
                            title="{{ parent_issue.caption|e }}">
                          #{{ parent_issue.id -}}: {{ parent_issue.caption|e }}
                        </a>
                      {% else %}
                        <span class="parent-title link">
                          (Запрос верхнего уровня)
                        </span>
                      {% endif %}
                    </p>
                  {# /Наименование родительского запроса #}

                  {# Наименование целевого запроса #}
                    <a href="/issues/issue/{{ issue.id }}"
                        title="{{ issue.caption|e }}">
                      <i class="bi bi-card-heading"></i>
                      {{ workflow.caption|e }}: {{ issue_kind.caption|e }}
                      #{{ issue.id -}}
                      : {{ issue.caption|e|replace(
                              search_value,
                              "<mark class='text-danger'><b>" + search_value + "</b></mark>")
                      }}
                    </a>
                  {# /Наименование целевого запроса #}

                </div>
              </div>
            {# /Заголовок запроса #}

            {# Прогресс запроса #}
              <div class="col-12">
                <div class="progress">
                  {% set progress = project_manager.progress_value(issue.id) %}
                  <div
                      class="progress-bar
                        {%- if 100 == progress %} bg-success
                        {%- elif 40 > progress %} bg-warning
                        {%- endif %}"
                      role="progressbar"
                      style="width: {{ progress }}%;"
                      aria-valuenow="{{ progress }}"
                      aria-valuemin="0"
                      aria-valuemax="100">{{ progress }}%</div>
                </div>
              </div>
            {# /Прогресс запроса #}

            {# -- Перечень свойств запроса -- #}
              <div class="col-12">
                <table class="table table-sm table-borderless">
                  <tbody>

                    {# Состояние запроса #}
                      {% set state = project_manager.state(issue.state_id) %}
                      {% if state %}
                        <tr>
                          <td style="width: 2%;">
                            Состояние:
                          </td>
                          <td>
                            {{ state.caption|e }}
                          </td>
                        </tr>
                      {% endif %}
                    {# /Состояние запроса #}

                    {# Проект #}
                      {% set project = project_manager.project(issue.project_id) %}
                      {% if project %}
                        <tr>
                          <td>
                            Проект:
                          </td>
                          <td>
                            <a href="/projects/project/{{ project.id }}">
                              {{ project.caption|e }}
                            </a>
                          </td>
                        </tr>
                      {% endif %}
                    {# /Проект #}

                    {# Версия #}
                      {% set version = project_manager.version(issue.version_id) %}
                      {% if version %}
                        <tr>
                          <td>
                            Версия:
                          </td>
                          <td>
                            <a href="/projects/version/{{ version.id }}">
                              {{ version.caption|e }}
                            </a>
                          </td>
                        </tr>
                      {% endif %}
                    {# /Версия #}

                    {# Изменён #}
                      {% set last_modify_user = project_manager.user(issue.last_modify_user_id()) %}
                      {% if last_modify_user %}
                        <tr>
                          <td>
                            Изменён:
                          </td>
                          <td>
                            {{- issue.last_modified() -}}
                            <a href="/users/user_statistics/{{ last_modify_user.id }}">
                              {{ USER_NAME.VALUE_WITH_ICON(last_modify_user, user.id) }}
                            </a>
                          </td>
                        </tr>
                      {% endif %}
                    {# /Изменён #}

                    {# Создан #}
                      {% set create_user = project_manager.user(issue.create_user_id()) %}
                      {% if create_user %}
                        <tr>
                          <td>
                            Создан:
                          </td>
                          <td>
                            {{- issue.created() -}}
                            <a href="/users/user_statistics/{{ create_user.id }}">
                              {{ USER_NAME.VALUE_WITH_ICON(create_user, user.id) }}
                            </a>
                          </td>
                        </tr>
                      {% endif %}
                    {# /Создан #}

                    {# Описание #}
                      {% set create_user = project_manager.user(issue.create_user_id()) %}
                      {% if create_user %}
                        <tr>
                          <td colspan="2">
                            <pre>
                              {{- issue.content|e|replace(
                                    search_value,
                                    "<mark class='text-danger'><b>" + search_value + "</b></mark>")
                              -}}
                            </pre>
                          </td>
                        </tr>
                      {% endif %}
                    {# /Описание #}

                  </tbody>
                </table>
              </div>
            {# -- /Перечень свойств запроса -- #}

            <hr>
          {% endfor %}

          {# -- Пагинация -- #}
            <nav>
              <ul class="pagination">
                {% for page in range(1, pages + 1) %}
                  <li class="page-item {% if page == current_page %}active{% endif %}">
                    <a class="page-link"
                        href="/search?search_value={{ search_value }}&page={{ page }}">
                      {{- page -}}
                    </a>
                  </li>
                {% endfor %}
              </ul>
            </nav>
          {# -- /Пагинация -- #}
        {% else %}
          Запросов не найдено.
        {% endif %}
      {# /Перечень запросов #}
    </div>
  </div>
{% endblock content %}


{#----------------------------------------------------------------------------#}
{% block scripts %}
{% endblock %}
